const express = require('express');
const router = express.Router();
const { authenticateAdmin } = require('../middleware/auth');

// 后台管理首页
router.get('/', (req, res) => {
  res.render('admin/index', { 
    title: '日记系统 - 后台管理',
    user: req.session.admin
  });
});

// 登录页面
router.get('/login', (req, res) => {
  if (req.session.admin) {
    return res.redirect('/admin');
  }
  res.render('admin/login', { 
    title: '管理员登录',
    error: req.query.error
  });
});

// 登录处理
router.post('/login', async (req, res) => {
  try {
    const { username, password } = req.body;
    
    // 这里应该添加登录验证逻辑
    // 临时处理
    if (username === 'admin' && password === 'admin123') {
      req.session.admin = {
        id: 1,
        username: 'admin',
        role: 'super_admin'
      };
      res.redirect('/admin');
    } else {
      res.redirect('/admin/login?error=invalid');
    }
  } catch (error) {
    console.error('管理员登录错误:', error);
    res.redirect('/admin/login?error=server');
  }
});

// 退出登录
router.post('/logout', (req, res) => {
  req.session.destroy((err) => {
    if (err) {
      console.error('退出登录错误:', err);
    }
    res.redirect('/admin/login');
  });
});

// 用户管理
router.get('/users', (req, res) => {
  res.render('admin/users', { 
    title: '用户管理',
    user: req.session.admin
  });
});

// 日记管理
router.get('/diaries', (req, res) => {
  res.render('admin/diaries', { 
    title: '日记管理',
    user: req.session.admin
  });
});

// 分类管理
router.get('/categories', (req, res) => {
  res.render('admin/categories', { 
    title: '分类管理',
    user: req.session.admin
  });
});

// 标签管理
router.get('/tags', (req, res) => {
  res.render('admin/tags', { 
    title: '标签管理',
    user: req.session.admin
  });
});

// 统计分析
router.get('/stats', (req, res) => {
  res.render('admin/stats', { 
    title: '统计分析',
    user: req.session.admin
  });
});

// 系统设置
router.get('/settings', (req, res) => {
  res.render('admin/settings', { 
    title: '系统设置',
    user: req.session.admin
  });
});

module.exports = router; 